The present invention relates to the detection of imminent failures of an array of NVRAM cells. Specifically, a circuit is described which will monitor the degradation of an array of NVRAM cells so that a timely replacement of the array may be made.
NVRAM arrays are commonly found in devices such as portable calculators, smart cards and medical record storage devices. In the smart card application they are typically used as a permanent memory to store specific transaction data which is necessary for using the smart card. Each cell of the NVRAM may be of the type which comprises a stacked gate cell formed from a floating gate structure located under a control gate, with a source and drain diffusion region on either side of the gate structures. Each stacked gate cell of the array is programmed by storing a charge representing a digital binary 1 value in the a floating gate of the cell. The NVRAM cells are erased by applying a common erasing potential to the sources of all the cell transistors in the NVRAM array.
NVRAM arrays, however, have a limited life. Each successive erasure of an NVRAM cell tends to degrade the cell so that erasure becomes more difficult with time. NVRAM cells fail catastrophically as they degrade, and if the failure is not accurately predicted, valuable data may be lost from the NVRAM array. The time it takes to erase a programmed cell by removing the charge from the floating gate is an endurance factor which represents the useful life of the array. one known technique for avoiding the catastrophic failure of NVRAM cells, the number of times that the array of NVRAM cells has been erased is used as a predictor of catastrophic failure. When the total erasure count reaches a predetermined experimentally derived value, it is deemed time to replace the NVRAM array in order to avoid a catastrophic failure.
The foregoing technique is disadvantageous in that it can result in the replacement of an array of NVRAM cells prematurely when a significant amount of life remains in the NVRAM cells.